package com.lnking.lnkingplace.model.entity;

import java.time.LocalDateTime;

import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.lnking.starter.mybatis.entity.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * <p>
 * 
 * </p>
 *
 * @author zhangqt
 * @since 2022-09-18
 */
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value="Exhibition对象", description="")
public class Exhibition extends BaseEntity {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "场所名称")
    private String placeId;

    @ApiModelProperty(value = "活动名称")
    private String activityName;

    @ApiModelProperty(value = "活动类型")
    private String activityType;

    @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "开始时间")
    private LocalDateTime startTime;

    @ApiModelProperty(value = "活动介绍")
    private String introduce;

    @ApiModelProperty(value = "地址")
    private String address;

    @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "结束时间")
    private LocalDateTime endTime;

//    @ApiModelProperty(value = "活动起止时间")
//    private String activityTime;

    @ApiModelProperty(value = "主办单位")
    private String hostUnit;

    @ApiModelProperty(value = "承办单位")
    private String organizer;

    @ApiModelProperty(value = "承办单位联系人")
    private String organizerLinkman;

    @ApiModelProperty(value = "承办单位电话")
    private String organizerPhone;

    @ApiModelProperty(value = "展位个数")
    private Integer standNumber;

    @ApiModelProperty(value = "面积")
    private String area;

    @ApiModelProperty(value = "参展商")
    private Integer exhibitingCompany;

    @ApiModelProperty(value = "境外参展商-个数")
    private Integer exhibitingCompanyOverseas;

    @ApiModelProperty(value = "境内参展商-个数")
    private Integer exhibitingCompanyDomestic;

    @ApiModelProperty(value = "专业客商-人数")
    private Integer travellingTrader;

    @ApiModelProperty(value = "境外专业客商")
    private Integer travellingTraderOverseas;

    @ApiModelProperty(value = "境内专业客商")
    private Integer travellingTraderDomestic;

    @ApiModelProperty(value = "成交额")
    private Float volumeOfTransaction;

    @TableField(exist = false)
    @JsonIgnore
    private String strVolumeOfTransaction;
    public String getStrVolumeOfTransaction(){
        if(null != volumeOfTransaction){
            return String.valueOf(volumeOfTransaction);
        }
        return null;
    }

    @ApiModelProperty(value = "投资项目个数")
    private Integer investmentProjectNumber;

    @ApiModelProperty(value = "投资项目金额")
    private Float investmentProjectAmount;

    @TableField(exist = false)
    @JsonIgnore
    private String strInvestmentProjectAmount;
    public String getStrInvestmentProjectAmount(){
        if(null != investmentProjectAmount){
            return String.valueOf(investmentProjectAmount);
        }
        return null;
    }

    @ApiModelProperty(value = "参与人数")
    private Integer peopleNumber;

    @ApiModelProperty(value = "境外参与人数")
    private Integer peopleNumberOverseas;

    @ApiModelProperty(value = "境内参与人数")
    private Integer peopleNumberDomestic;

    @ApiModelProperty(value = "展馆收益")
    private Float income;

    @TableField(exist = false)
    @JsonIgnore
    private String strIncome;
    public String getStrIncome(){
        if(null != income){
            return String.valueOf(income);
        }
        return null;
    }

    @JsonIgnore
    private Boolean delFlag;

    @ApiModelProperty(value = "创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createTime;


}
